<?php
/**
* Classe de representação de uma camada de negócio da entidade Lançamento
* A camada de negócio é a parte que engloba as regras e efetua os comandos de execução de um sistema
* @package Sistema
* @subpackage Lançamento
*/
class NLancamento extends negocioPadrao{
	const Credito = 'C';
	const Debito = 'D';
	/**
	* @gerador variavelPadrao
	* @var integer Identificador do Lançamento
	*/
	public $identificadorDoLancamento;
	/**
	* @gerador variavelPadrao
	* @var string Tipo
	*/
	public $tipo;
	/**
	* @gerador variavelPadrao
	* @var TMoeda Valor
	*/
	public $valor;
	/**
	* @gerador variavelPadrao
	* @var string Descrição
	*/
	public $descricao;
	/**
	* @gerador variavelPadrao
	* @var TData Data
	*/
	public $data;
	/**
	* @gerador variavelPadrao
	* @var integer Conta
	*/
	public $conta;
	/**
	* @gerador variavelPadrao
	* @var integer Identificador do arquivo
	*/
	public $identificadorDoArquivo;
	/**
	* Retorna o nome da propriedade que contém o valor chave de negócio
	* @gerador metodoPadrao
	* @return string
	*/
	function nomeChave(){ return 'identificadorDoLancamento'; }

        /**
         * Lê os lançamentos de uma conta
         * @param pagina $pagina
         * @param array $arParametros
         * @return colecaoPadraoNegocio
         */
        public function lerPorConta(pagina $pagina, $arParametros) {
                return $this->vetorPraColecao($this->pegarPersistente()->lerPorConta($pagina, $arParametros));
        }

        /**
         * Lê os total do movimento de uma conta
         * @param pagina $pagina
         * @param array $arParametros
         * @return array
         */
        public function lerMovimentoPorConta($arParametros) {
                return $this->pegarPersistente()->lerMovimentoPorConta($arParametros);
        }

}
?>